package io.xccit.race.service;

import java.util.List;
import io.xccit.race.domain.RaceCompetitionDetail;

/**
 * 竞赛详情Service接口
 * 
 * @author ywx
 * @date 2025-10-9
 */
public interface IRaceCompetitionDetailService 
{
    /**
     * 查询竞赛详情
     * 
     * @param id 竞赛详情主键
     * @return 竞赛详情
     */
    public RaceCompetitionDetail selectRaceCompetitionDetailById(Long id);

    /**
     * 根据竞赛ID查询竞赛详情
     * 
     * @param competitionId 竞赛ID
     * @return 竞赛详情
     */
    public RaceCompetitionDetail selectRaceCompetitionDetailByCompetitionId(Long competitionId);

    /**
     * 查询竞赛详情列表
     * 
     * @param raceCompetitionDetail 竞赛详情
     * @return 竞赛详情集合
     */
    public List<RaceCompetitionDetail> selectRaceCompetitionDetailList(RaceCompetitionDetail raceCompetitionDetail);

    /**
     * 新增竞赛详情
     * 
     * @param raceCompetitionDetail 竞赛详情
     * @return 结果
     */
    public int insertRaceCompetitionDetail(RaceCompetitionDetail raceCompetitionDetail);

    /**
     * 修改竞赛详情
     * 
     * @param raceCompetitionDetail 竞赛详情
     * @return 结果
     */
    public int updateRaceCompetitionDetail(RaceCompetitionDetail raceCompetitionDetail);

    /**
     * 批量删除竞赛详情
     * 
     * @param ids 需要删除的竞赛详情主键集合
     * @return 结果
     */
    public int deleteRaceCompetitionDetailByIds(Long[] ids);

    /**
     * 删除竞赛详情信息
     * 
     * @param id 竞赛详情主键
     * @return 结果
     */
    public int deleteRaceCompetitionDetailById(Long id);

    /**
     * 根据竞赛ID删除竞赛详情
     * 
     * @param competitionId 竞赛ID
     * @return 结果
     */
    public int deleteRaceCompetitionDetailByCompetitionId(Long competitionId);
}
